//▽ブログページャー変数郡 var $p_first = 1; //最初に表示するページ var $page_set = 8; //1ページに表示するブログ数 var $open_page = 2; //ページの前後に表示するページ数 var $p_status = Array(); //現在のページ var $b_page = Array(); //全ページ数 var pmove; //関数の為の変数 //△ブログページャー変数郡 jQuery.noConflict(); (function($) { $(function() { //ブログページャー $("div.blogselection").each(function($i){ //一つのブログブロックに記事が幾つあるか var $b_count = $(this).children("div.j-blogarticle").length; //ブログが10個以下ならページャー要らない if($b_count>10){ //ページャーナビをブログブロックの上と下に追加 $pager ="
<\/div>"; $(this).append($pager); //ブログブロックの上はすぐブログ記事が始まっちゃうので
で横棒入れておく $(this).prepend($pager +"
"); //何ページになるか調べて格納 $b_page[$i] = 1 + Math.floor(($b_count - 1) / $page_set); //ブログページ移動関数 pmove($p_first,$i); } }); }); //ブログページャー関数 pmove = function($p,$target) { $p_status[$target] = $p; $("div.blogselection").each(function($i){ if($i == $target){ var $pager_arr = Array(); var $back = $p_status[$i] - 1; var $next = $p_status[$i] + 1; //ページャーナビ表示する最初のページ番号 var $f = $p_status[$i] - $open_page; if($f <= 0){ $f = 1; } //ページャーナビ表示する最後のページ番号 var $l = $p_status[$i] + $open_page; if($l > $b_page[$i]){ $l = $b_page[$i]; } //▽ページャーの内容 //ロジック説明 //・今表示したいページが1ページ目だった場合は「<<」のリンクを消す //・今表示したいページの番号だった場合、文字を太文字にしてリンクを消す //・今表示したいページが最大ページ目だった場合は「>>」のリンクを消す //・上記以外は関数「pmove」をjavascriptで起動出来るリンクを設定する var $row = 0; $pager_arr[$row++] = "
"; if($p_status[$i] == 1){ $pager_arr[$row++] = "<<<\/a> "; }else{ $pager_arr[$row++] = "<<<\/a> "; } var $j; for($j=$f;$j <= $l;$j++){ if($j!=$p_status[$i]){ $pager_arr[$row++] = ""+$j+"<\/a> "; }else{ $pager_arr[$row++] = ""+$j+"<\/strong><\/a> "; } } if($p_status[$i] == $b_page[$i]){ $pager_arr[$row++] = ">><\/a><\/div>"; }else{ $pager_arr[$row++] = ">><\/a><\/div>"; } $pager_arr[$row++] = "<\/div>"; $pager =""; $.each($pager_arr,function(key,val){ $pager = $pager + val; }); $(this).children("div.pager_navi").html($pager); //△ページャーの内容 //ブログ記事を隠す $(this).children("div.j-blogarticle").hide(); $(this).children("div.j-blogarticle").each(function($j){ //表示したいページとしての対象ブログ記事を表示 if($j >= ($p_status[$i] * $page_set)-$page_set && $j < ($p_status[$i] * $page_set)){ $(this).show(); } }); //スクロールバーを一番上へ! $("body").scrollTop(0); } }); }; })(jQuery);